/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package py.una.pol.tesis.ii.wsrest;

import com.google.gson.Gson;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import javax.ws.rs.DELETE;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.UriInfo;
import org.apache.log4j.Logger;
import py.una.informatica.dto.Genero;
import py.una.informatica.dto.Respuesta;

/**
 * REST Web Service
 *
 * @author Leandro
 */
@Path("generos")
public class GenerosResource {

    @Context
    private UriInfo context;

    /**
     * Creates a new instance of PacientesResource
     */
    public GenerosResource() {
    }

    @POST
    public String crearGenero(@Context HttpServletRequest req, String paciente) {

        return "{cod:0,msj:OK}";
    }

    @DELETE
    @Path("{id}")
    public String deleteGenero(@Context HttpServletRequest req, @PathParam("id") String id) {

        return "";
    }

    @GET
    @Path("{id}")
    public String getGenero(@Context HttpServletRequest req, @PathParam("id") String id) {

        return "";
    }

    @GET
    public String getGeneros(@Context HttpServletRequest req) {
        Respuesta respuesta = new Respuesta();
        Genero genero1;
        Genero genero2;
        List<Object> generos = new ArrayList<Object>();
        Gson gson = new Gson();
        String respuestaJson = "";
        try {
            HttpSession session = req.getSession(true);
            Logger.getLogger("").info("Session, GenerosResource.getGeneros: " + session.getId());
            
            genero1 = new Genero(1, "Masculino");
            genero2 = new Genero(2, "Femenino");

            generos.add(genero1);
            generos.add(genero2);

            respuesta.setEstado("0");
            respuesta.setMensaje("OK");
            respuesta.setDato(generos);

            respuestaJson = gson.toJson(respuesta);
            Logger.getLogger("").info("Respuesta getGeneros: " + respuestaJson);
        } catch (Exception e) {
            respuesta.setEstado("-1");
            respuesta.setMensaje("Error al listar los Generos");
            respuesta.setDato(null);
            Logger.getLogger("").error("Error en getGeneros", e);
        }
        return respuestaJson;
    }
}
